package main

import (
	"log"
	"net/http"

	"github.com/gin-gonic/gin"
)

type Message struct {
	Info     string `json:"info"`
	From     string
	To       string `json:"to"`
	SendType int    `json:"sendtype"`
}

func main() {
	// 1.创建路由
	r := gin.Default()
	v1 := r.Group("/v1")
	v1.Use(WSMessage)
	// 2.绑定路由规则，执行的函数
	// gin.Context，封装了request和response
	r.GET("/register", Register)
	v1.POST("/test", func(c *gin.Context) { // 用来模拟常规的接口 可以替换成 get put delete 等方法
		var msg Message
		err := c.ShouldBindJSON(&msg)

		if err != nil {
			log.Printf("post message error %v\n", err)
			c.String(http.StatusBadRequest, "BAD")
			return
		}
		c.JSON(http.StatusOK, gin.H{"success": true, "result": "ok"})

	})
	// 3.监听端口，默认在8080
	// Run("里面不指定端口号默认为8080")
	r.Run(":8000")
}
